package com.wrupple.muba.desktop.client.module;

import com.google.gwt.inject.client.Ginjector;
import com.google.gwt.place.shared.PlaceHistoryMapper;
import com.wrupple.muba.common.shared.State.Context;
import com.wrupple.muba.common.shared.State.DesktopManager;
import com.wrupple.muba.desktop.client.bootstrap.state.LoadModuleActivities;
import com.wrupple.muba.desktop.client.bootstrap.state.ReadDesktopMetadata;
import com.wrupple.muba.desktop.client.bootstrap.state.RegisterDesktopData;

public interface DesktopModule extends Ginjector {
	
	/*
	 * Desktop Structure
	 */


	DesktopActivityMapper getActivityMapper();

	PlaceHistoryMapper getPlaceHistoryMapper();

	DesktopManager getDesktopManager();

	DesktopModuleController getDesktopModuleController();
	
	
	/*
	 * Desktop Loading
	 */

	Context getDesktopLoadingContext();

	ReadDesktopMetadata getPlaceRegister();

	LoadModuleActivities getModuleLoader();

	RegisterDesktopData getActivityRegister();

}
